ofsp2026 14_time

Created time
Mar 28, 2026 08:25 AM
type
Post
status
Published
date
Mar 28, 2026
slug
ofsp2026 14_time
summary
tags
ofsp2026
OpenFOAM
category
post
icon
password
Place
Last edited time
Mar 28, 2026 09:14 AM
📌
Important
访问 https://aerosand.cc 以获取最近更新。

0. 前言

本文简单介绍 OpenFOAM 中的 Time 类,在此基础上讨论 createTime.H 这个基础头文件。
本文主要讨论
测试新脚本
理解 createTime.H 头文件
了解 Time 类
理解时间相关的成员方法
编译运行 time 项目

1. 项目准备

终端输入命令,建立项目
终端输入命令,测试初始求解器
测试初始求解器没有问题,可以进一步开发。此步骤以后不再赘述。

1.1. 脚本和说明

读者可以发现,前面项目使用的脚本没有通用性,每次都需要重新修改,十分繁琐。
我们将逐渐介绍一些更方便的脚本写法。
终端输入命令,新建脚本
脚本 caserun 负责应用编译成功之后,调试算例的运行,内容如下
其中,$0 表示返回当前脚本的绝对路径 %xxx 表示去除 xxx 字符,/* 表示 / 及之后的所有字符。|| exit 1 表示如果 cd 命令执行失败(返回非零值),则退出脚本并返回错误码1。
📌
Tip
不用担心脚本语言,暂时只需要知道使用上述脚本即可,更深入的脚本语言会随着讨论深入而逐渐介绍。
脚本 caseclean 负责清理调试算例,还原到初始状态,内容如下
这两个脚本自动获取应用路径和应用名称,所以也适合后续讨论的其他应用使用,只需要复制使用即可。
终端输入命令,使脚本生效

2. createTime.H

我们可以通过终端查找该文件
使用 vscode 可以直接点击终端输出的文件路径打开该文件。
在 vscode 中可以通过 OFextension 直接跳转打开该文件,以后不再赘述。
代码具体为

3. Time 类

类 Time 是 OpenFOAM 中的基础类,具有很多的成员数据和成员方法。我们大概挑几处代码作为切入点简单了解一下 Time 类。
终端输入命令,查阅 Time 类的声明
打开 Time.H ,内容如下
📌
Tip
再次啰嗦,对于现阶段来说,读者不宜深挖代码。只要做到心里有数,可以理解且不陌生排斥即可。

4. 时间信息

我们可以使用 Time 类的一些方法输出和使用时间信息。
主函数修改如下
终端输入命令,编译运行此项目
终端输出信息如下
通过这个项目,可以看到 runTime 对象不仅仅能访问时间目录,还可以访问 system/, constant/ 等文件夹。

5. 小结

本文简单讨论了 Time 类,了解 Time 类成员方法具有的作用。
到目前为止,我们已经大体理解 OpenFOAM 项目中常见的 setRootCase.H 和 createTime.H 头文件,下一篇将讨论另一个必备头文件。
本文完成讨论
测试新脚本
理解 createTime.H 头文件
了解 Time 类
理解时间相关的成员方法
编译运行 time 项目
 

支持我们

📌
Tip
希望这里的分享可以对坚持、热爱又勇敢的您有所帮助。
如果这里的分享对您有帮助,您的评论或赞助将对本系列以及后续其他系列的更新、勘误、迭代和完善都有很大的意义,这些行动也会为后来的新同学的学习有很大的助益。
赞助打赏时的信息和留言将用于展示和感谢。
Alipay
Alipay
 
Copyright @ 2026 Aerosand
  • OpenFOAM 开发代码 :GPL v3
 
 
Loading...